/*
 * @Description: 构造函数创建对象
 * @Author: zzj
 * @Date: 2021-09-07 11:04:10
 * @LastEditors: zzj
 * @LastEditTime: 2021-09-07 11:20:26
 */

//构造函数创建对象
function Dog(name,age){
    this.name = name;
    this.age = age;
    // this.sayName = function(){
    //     console.log(this.name);
    // }//每一次创建函数时，都会创建一个新的函数
    this.sayName = sayName;
}
//可以把函数写在全局，可以避免重复创建函数的尴尬
//但是这么使用，封装性较差
function sayName (){
    console.log(this.name);
}
var d1 = new Dog("xiaobai",2);
var d2 = new Dog("xioahei",1);
console.log(d1);
console.log(d1.__proto__.constructor);   //返回一个对象的构造函数
console.log(d2.name);
d2.sayName();